package cn.enjoy.sys.model;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public class SysUser implements Serializable{
	private static final long serialVersionUID = -6512804146769981935L;
	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.id
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String id;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.user_name
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String userName;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.password
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String password;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.password_rand
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String passwordRand;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.real_name
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String realName;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.mobile
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String mobile;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.email
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String email;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.org_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String orgCode;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.identity_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String identityCode;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.sys_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String sysCode;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.status
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private Integer status;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.validate_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String validateCode;



	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.activated_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date activatedTime;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.create_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date createTime;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.create_user
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String createUser;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.update_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	private Date updateTime;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.update_user
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String updateUser;

	/**
	 * This field was generated by MyBatis Generator. This field corresponds to the database column sys_user.birthday
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	private String birthday;
	private String captcha;
	private Date captchaTime;

	private String qq;
	private String wx;
	private String icon;
	private String positionLevel;

	private String positionLevelStr;
	private String principals;

	public String getPositionLevel() {
		return positionLevel;
	}

	public void setPositionLevel(String positionLevel) {
		this.positionLevel = positionLevel;
	}

	public String getQq() {
		return qq;
	}

	public void setQq(String qq) {
		this.qq = qq;
	}

	public String getWx() {
		return wx;
	}

	public void setWx(String wx) {
		this.wx = wx;
	}

	public String getIcon() {
		return icon;
	}

	public void setIcon(String icon) {
		this.icon = icon;
	}

	public Date getCaptchaTime() {
		return captchaTime;
	}

	public void setCaptchaTime(Date captchaTime) {
		this.captchaTime = captchaTime;
	}

	public String getCaptcha() {
		return captcha;
	}

	public void setCaptcha(String captcha) {
		this.captcha = captcha;
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.id
	 * @return  the value of sys_user.id
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getId() {
		return id;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.id
	 * @param id  the value for sys_user.id
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setId(String id) {
		this.id = id == null ? null : id.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.user_name
	 * @return  the value of sys_user.user_name
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getUserName() {
		return userName;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.user_name
	 * @param userName  the value for sys_user.user_name
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setUserName(String userName) {
		this.userName = userName == null ? null : userName.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.password
	 * @return  the value of sys_user.password
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getPassword() {
		return password;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.password
	 * @param password  the value for sys_user.password
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setPassword(String password) {
		this.password = password == null ? null : password.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.password_rand
	 * @return  the value of sys_user.password_rand
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getPasswordRand() {
		return passwordRand;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.password_rand
	 * @param passwordRand  the value for sys_user.password_rand
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setPasswordRand(String passwordRand) {
		this.passwordRand = passwordRand == null ? null : passwordRand.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.real_name
	 * @return  the value of sys_user.real_name
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getRealName() {
		return realName;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.real_name
	 * @param realName  the value for sys_user.real_name
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setRealName(String realName) {
		this.realName = realName == null ? null : realName.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.mobile
	 * @return  the value of sys_user.mobile
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getMobile() {
		return mobile;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.mobile
	 * @param mobile  the value for sys_user.mobile
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setMobile(String mobile) {
		this.mobile = mobile == null ? null : mobile.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.email
	 * @return  the value of sys_user.email
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getEmail() {
		return email;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.email
	 * @param email  the value for sys_user.email
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setEmail(String email) {
		this.email = email == null ? null : email.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.org_code
	 * @return  the value of sys_user.org_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getOrgCode() {
		return orgCode;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.org_code
	 * @param orgCode  the value for sys_user.org_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setOrgCode(String orgCode) {
		this.orgCode = orgCode == null ? null : orgCode.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.identity_code
	 * @return  the value of sys_user.identity_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getIdentityCode() {
		return identityCode;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.identity_code
	 * @param identityCode  the value for sys_user.identity_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setIdentityCode(String identityCode) {
		this.identityCode = identityCode == null ? null : identityCode.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.sys_code
	 * @return  the value of sys_user.sys_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getSysCode() {
		return sysCode;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.sys_code
	 * @param sysCode  the value for sys_user.sys_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setSysCode(String sysCode) {
		this.sysCode = sysCode == null ? null : sysCode.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.status
	 * @return  the value of sys_user.status
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public Integer getStatus() {
		return status;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.status
	 * @param status  the value for sys_user.status
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setStatus(Integer status) {
		this.status = status;
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.validate_code
	 * @return  the value of sys_user.validate_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getValidateCode() {
		return validateCode;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.validate_code
	 * @param validateCode  the value for sys_user.validate_code
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setValidateCode(String validateCode) {
		this.validateCode = validateCode == null ? null : validateCode.trim();
	}





	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.activated_time
	 * @return  the value of sys_user.activated_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public Date getActivatedTime() {
		return activatedTime;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.activated_time
	 * @param activatedTime  the value for sys_user.activated_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setActivatedTime(Date activatedTime) {
		this.activatedTime = activatedTime;
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.create_time
	 * @return  the value of sys_user.create_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public Date getCreateTime() {
		return createTime;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.create_time
	 * @param createTime  the value for sys_user.create_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.create_user
	 * @return  the value of sys_user.create_user
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getCreateUser() {
		return createUser;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.create_user
	 * @param createUser  the value for sys_user.create_user
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setCreateUser(String createUser) {
		this.createUser = createUser == null ? null : createUser.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.update_time
	 * @return  the value of sys_user.update_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public Date getUpdateTime() {
		return updateTime;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.update_time
	 * @param updateTime  the value for sys_user.update_time
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.update_user
	 * @return  the value of sys_user.update_user
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getUpdateUser() {
		return updateUser;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.update_user
	 * @param updateUser  the value for sys_user.update_user
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setUpdateUser(String updateUser) {
		this.updateUser = updateUser == null ? null : updateUser.trim();
	}

	/**
	 * This method was generated by MyBatis Generator. This method returns the value of the database column sys_user.birthday
	 * @return  the value of sys_user.birthday
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public String getBirthday() {
		return birthday;
	}

	/**
	 * This method was generated by MyBatis Generator. This method sets the value of the database column sys_user.birthday
	 * @param birthday  the value for sys_user.birthday
	 * @mbggenerated  Fri Jul 08 11:27:36 CST 2016
	 */
	public void setBirthday(String birthday) {
		this.birthday = birthday == null ? null : birthday.trim();
	}

	private String loginAccount;

    private List<SysRole> roleList;
    
    private List<String> roleIds;
    
    private String isCanLogin;
    
    public String getLoginAccount() {
		return loginAccount;
	}

	public void setLoginAccount(String loginAccount) {
		this.loginAccount = loginAccount;
	}

	public List<SysRole> getRoleList() {
		return roleList;
	}

	public void setRoleList(List<SysRole> roleList) {
		this.roleList = roleList;
	}

    public List<String> getRoleIds() {
        return roleIds;
    }

    public void setRoleIds(List<String> roleIds) {
        this.roleIds = roleIds;
    }

	public String getIsCanLogin() {
		return isCanLogin;
	}

	public void setIsCanLogin(String isCanLogin) {
		this.isCanLogin = isCanLogin;
	}

	public String getPositionLevelStr() {
		return positionLevelStr;
	}

	public void setPositionLevelStr(String positionLevelStr) {
		this.positionLevelStr = positionLevelStr;
	}

	public String getPrincipals() {
		return principals;
	}

	public void setPrincipals(String principals) {
		this.principals = principals;
	}


}